package com.syni.mdd.sjb.common.component.mybatis.community.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.io.Serializable;
import java.time.LocalDateTime;

/**
 * 企业微信标签数据表实体
 *
 * @author wangbaitao
 * @Date 2021-03-01
 */
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class SjbQywxTagInfo implements Serializable {
    private static final long serialVersionUID = 1L;
    /**
     * 主键Id
     */
    @TableId(value = "id", type = IdType.ASSIGN_UUID)
    private String id;
    /**
     * 标签组id
     */
    private String groupId;
    /**
     * 标签组名称
     */
    private String groupName;
    /**
     * 标签组创建时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private LocalDateTime createTime;
    /**
     * 标签id
     */
    private String tagId;
    /**
     * 标签名称
     */
    private String tagName;
    /**
     * 标签创建时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private LocalDateTime tagCreateTime;
    /**
     * 标签排序的次序值，order值大的排序靠前。有效的值范围是[0, 2^32)
     */
    private Integer tagOrder;
    /**
     * 标签组排序的次序值，order值大的排序靠前。有效的值范围是[0, 2^32)
     */
    private Integer groupOrder;
    /**
     * 同步时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private LocalDateTime syncTime;
    /**
     * 企业id
     */
    private String corpId;

    public static final String ID = "id";
    public static final String GROUP_ID = "group_id";
    public static final String GROUP_NAME = "group_name";
    public static final String CREATE_TIME = "create_time";
    public static final String TAG_ID = "tag_id";
    public static final String TAG_NAME = "tag_name";
    public static final String TAG_CREATE_TIME = "tag_create_time";
    public static final String TAG_ORDER = "tag_order";
    public static final String GROUP_ORDER = "group_order";
    public static final String SYNC_TIME = "sync_time";
    public static final String CORP_ID = "corp_id";
}